1. Field of the Invention
Embodiments of the present invention relate to the field of network communications. More particularly, embodiments of the present invention relate generally to the generation and display of web based user interfaces.
2. Related Art
User interfaces provide a means to a user for visually interacting with a server provider that supplies services or content over a communication network. The user can select or activate various options and navigate through the site by interacting with the user interface through the mouse, keyboard, or through other means.
In conventional systems, the service provider typically generates a static user interface that is sent to all users accessing the service provider for content or services. Within this environment, the software code that implements and generates the user interface may become too rigid and unchangeable. This is especially true as the user interface becomes more complex through evolution by providing additional service and content features.
One problem with the development of static user interfaces is the inability to easily implement evolutionary changes within the user interface. Any change, visual or otherwise, to the user interface, whether it involves the addition of new features, modifications to old features, or corrections to old features, would necessarily include rewriting the software code that implements the user interface that is used to interact with the server provider. Bringing the rewritten code to operation can be quite difficult and time consuming as the entire software code that implements the user interface must be rechecked and compiled to ensure its viability.
Another problem with a static user interface is the inability to introduce customization of the user interface. Again, any customization of the user interface would require the changing and rewriting of the software code that implements the user interface. As such, any customization would again be difficult. Customization may include personalizing the user interface to the user, or personalizing the user interface to reflect the various selectable and heterogeneous sources that may provide the same service through the service provider
As a result, application developers for service providers would find it difficult to make changes to user interfaces that accommodate for new features, modifications to old features, or corrections to old features since the conventional technology required a complete change of the code implementing the service. Moreover, customization of the user interface to personalize the user interface to the user and extend the functionality of the service is difficult for many of the same reasons.
This inability to easily add new features to existing code to accommodate the evolutionary change of the user interface makes it difficult for the service provider to exist within a heterogeneous environment where selection between multiple sources that provide a similar service is possible. As a result, this leads to a stagnation of service provider, forcing users to interact with outdated user interfaces.